package IOStream.PrintStream;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.nio.charset.Charset;

/**
 * ClassName:Dome001
 * Package:IOStream.PrintStream
 * Description:
 *
 * @Author:ZhangXin
 * @Create2023/3/3-23:15
 * @Version:v1.0
 */
public class Dome001 {
    /**打印流
     * 分类：打印流一般是指：PrintStream,printWriter两个类
     * 特点1：打印流只操作文件目的地,不操作数据源
     * 特点2：特有的写出方法可以实现,数据原样写出
     * 特点3：特有的写出方法,可以实现自动刷新,自动换行
     *          打印一次数据=写出+换行+刷新*/
    public static void main(String[] args) throws FileNotFoundException {
        /*字节打印流
        * public PrintStream(OutputStream/File/String) 关联字节输出流/文件/文件路径
        * public PrintStream(String fileName,Charset charset) 指定字符编码
        * public PrintStream(OutputStream out,boolean autoFlush) 自动刷新
        * public PrintStream(OutputStream out,boolean autoFlush,String encoding) 指定字符编码且自动刷新
        * 字节流底层没有缓冲区,开不开自动刷新都一样
        *
        * public void write(int b) 将指定的字节输出
        * public void println(Xxx  xx) 打印任意数据,自动刷新,自动换行
        * public void print(Xxx  xx) 打印任意数据,不换行
        * public void printf(String format，Object...args) 带有占位符的打印语句*/



        //1.创建字节打印流的对象
        PrintStream ps = new PrintStream(new FileOutputStream("E:\\aaa\\b.txt"),true, Charset.forName("GBK"));
        //2.写出数据
        ps.println(97);
        ps.print(true);
        ps.println();
        ps.printf("%s爱上了%s","阿珍","阿强");
        //释放资源
        ps.close();

    }
}
